You can use the two functions SPBGetDeviceInfo and SPBSetDeviceInfo to read and change the settings of a sound input device.
You can use the SPBGetDeviceInfo function to get information about the settings of a sound input device.
FUNCTION SPBGetDeviceInfo (inRefNum: LongInt; infoType: OSType;
infoData: Ptr): OSErr;
The SPBGetDeviceInfo function returns information about the sound input device specified by the inRefNum parameter. The type of information you want is specified in the infoType parameter. The available sound input device information selectors are listed in "Sound Input Device Information Selectors" . The information is copied into the buffer specified by the infoData parameter.
Because the SPBGetDeviceInfo function might move memory, you should not call it at interrupt time. Check the selector description of the selector you want to use to see if it moves memory before calling the SPBGetDeviceInfo function. Most of the selectors do not move memory and are therefore safe to use at interrupt time.
The trap macro and routine selector for the SPBGetDeviceInfo function are
Listing 43 shows an example that uses the SPBGetDeviceInfo function to get the name of a sound input device driver.
You can use the SPBSetDeviceInfo function to set information in a sound input device.
FUNCTION SPBSetDeviceInfo (inRefNum: LongInt; infoType: OSType;
infoData: Ptr): OSErr;
The SPBSetDeviceInfo function sets information about the sound input device specified by the inRefNum parameter, based on the data in the buffer specified by the infoData parameter.
The type of setting you wish to change is specified in the infoType parameter. The sound input device information selectors are listed in "Sound Input Device Information Selectors" .
Because the SPBSetDeviceInfo function might move memory, you should not call it at interrupt time. Check the selector description of the selector you want to use to see if it moves memory before calling the SPBGetDeviceInfo function. Most of the selectors do not move memory and are therefore safe to use at interrupt time.
| Previous | Chapter contents | Chapter top | Section top | Next |